#ifndef COMPRESSORWIDGET_H
#define COMPRESSORWIDGET_H

#include "dm/dmstruct.h"
#include "dynamicxucs.h"


class CompressorWidget : public AWidget
{
    Q_OBJECT
public:
    explicit CompressorWidget(const double &maxThreshold, QWidget *parent = nullptr);
    Compressor getData() const;
signals:
    void stateChanged(Compressor);
public slots:
    void set(const Compressor &data);
private:
    void valueChanged();
private:
    ALabel *thresholdLabel;
    ALabel *attackLabel;
    ALabel *decayLabel;
    ALabel *ratioLabel;
    ADoubleSpinBox *thresholdSpinBox;
    ASpinBox *attackSpinBox;
    ASpinBox *decaySpinBox;
    ASpinBox *ratioSpinBox;
    DynamicXUCS *ucs;
};

#endif // COMPRESSORWIDGET_H
